AspectC++: Language Proposal and Prototype Implementation
نویسندگان
چکیده
ABSTRACT The su ess of aspe t-oriented programming (AOP) raises and falls with user-friendly tool support. With Aspe tJ1 the rst omplete and powerful language extension for AOP has been reated. With this paper we intend to extend the Aspe tJ approa h to C/C++. We will present and dis uss a proposal for a set of language extensions we all Aspe tC++ to fa ilitate aspe t-oriented programming with C/C++ and we will illustrate our prototype implementation of a ompiler for this new language.
منابع مشابه
AspectC++ – An AOP Extension for C++
More and more software developers get in touch with aspect-oriented programming (AOP). By providing means to modularize the implementation of crosscutting concerns, it stands for more reusability, less coupling between modules, and better separation of concerns in general. Today, solid tool support for AOP is available, for instance, by JBoss (JBoss AOP), BEA (AspectWerkz), and IBM (AspectJ and...
متن کاملProgram Instrumentation for Debugging and Monitoring with AspectC++
Monitoring is a widely-used technique to check assumptions about the real-time behavior of a system, debug the code, or enforce the system to react if certain deadlines are passed. Program instrumentation is needed to insert monitoring code fragments into the monitored system if the monitor is implemented without hardware support. This paper describes a language-based approach to automated prog...
متن کاملThe design and implementation of AspectC + + q
Aspect-Oriented Programming (AOP) is a programming paradigm that supports the modular implementation of crosscutting concerns. Thereby, AOP improves the maintainability, reusability, and configurability of software in general. Although already popular in the Java domain, AOP is still not commonly used in conjunction with C/C++. For a broad adoption of AOP by the software industry, it is crucial...
متن کاملDynamic AspectC++: Generic Advice at Any Time
In theory, the expressive power of an aspect language should be independent of the aspect deployment approach, whether it is static or dynamic weaving. However, in the area of strictly statically typed and compiled languages, such as C or C++, there seems to be a feedback from the weaver implementation to the language level: dynamic aspect languages offer noticeable fewer features than their st...
متن کاملCreating Pluggable and Reusable Non-functional Aspects in AspectC++
An object-oriented framework enables both black box reuse and white box reuse in client applications, serving as an important infrastructural building block. We are refactoring framework-based applications to modularize cross-cutting concerns with aspects. In this paper, we explore implementation issues we encountered while creating non-functional aspects in AspectC++ that are pluggable and reu...
متن کامل